package fr.afcepf.al23.qualite.exception;
/**
 *
 * @author Stagiaire
 *
 */
public class MyCustomException extends Exception {

    /**
     *serialization.
     */
    private static final long serialVersionUID = 1L;
    /**
     *Enumeration de codes d'erreurs.
     */
    private static enum ErrorCode {
        /**
         *lors de l enregistrment utilisateur.
         */
        MAIL_EXISTE,
        /**
         *lors du passage d'une commande.
         */
        COMMANDE_INVALIDE };
        /**
         *code erreur.
         */
        private ErrorCode code;
        /**
         * @return the code
         */
        public ErrorCode getCode() {
            return code;
        }

        /**
         * @param paramCode the code to set
         */
        public void setCode(ErrorCode paramCode) {
            code = paramCode;
        }
        /**
         *DefaultConstructor.
         */
        public MyCustomException() {
            super();
            // TODO Auto-generated constructor stub
        }

        /**
         *
         * @param paramMessage coucou.
         * @param paramCause coucou.
         * @param paramEnableSuppression coucou.
         * @param paramWritableStackTrace coucou.
         */
        public MyCustomException(String paramMessage, Throwable paramCause,
                boolean paramEnableSuppression, boolean paramWritableStackTrace) {
            super(paramMessage, paramCause, paramEnableSuppression, paramWritableStackTrace);
            // TODO Auto-generated constructor stub
        }

        /**
         *
         * @param paramMessage coucou.
         * @param paramCause coucou.
         */
        public MyCustomException(String paramMessage, Throwable paramCause) {
            super(paramMessage, paramCause);
            // TODO Auto-generated constructor stub
        }
        /**
         *
         * @param paramMessage controle.
         */
        public MyCustomException(String paramMessage) {
            super(paramMessage);
            // TODO Auto-generated constructor stub
        }
        /**
         *
         * @param paramCause controle.
         */
        public MyCustomException(Throwable paramCause) {
            super(paramCause);
            // TODO Auto-generated constructor stub
        }
}
